Object instances may be created from streaming data. For instance, an object instantiation manager may have access to a variety of class definitions. The streaming data provides instructions that drive the instantiation manager to instantiate objects of particular classes. The streaming data further provides instructions on how to instantiate and how to populate those objects. When instantiating directly from streaming data without buffering, the instructions should be written in a manner that the instantiation manager has all the information needed to respond to each instruction as the instructions are received. Alternatively, the instantiation manager may buffer the streaming data until all of the instructions are received. For example, if the instantiation instructions are represented using markup, all of the markup document is buffered. 